home *** CD-ROM | disk | FTP | other *** search
/ The Original Shareware 1.1 / The Original Shareware (WeMake CDs)(Volume 1.1)(CDs, Inc)(1993).iso / 16 / fpc225_3.zip / SMITH.ZIP / FPMATH.SEQ next >
Text File  |  1988-09-08  |  2KB  |  70 lines

  1. \ From Dr. Dobb's Jr., Sept., 1988
  2. \ Translated to Forth by R. L. Smith
  3.  
  4. 5 CONSTANT NLOOPS
  5. FVARIABLE ARGUMENT
  6. FVARIABLE RESULT
  7.  
  8. : TESTSQRT  ( -- )
  9.         ." SQUARE ROOTS   "
  10.         NLOOPS 0
  11.         DO      ." ."  F0.0 ARGUMENT F!
  12.                 BEGIN
  13.                         ARGUMENT F@ 1000.0E0 F> 0=
  14.                 WHILE
  15.                         ARGUMENT F@ FSQRT RESULT F!
  16.                         ARGUMENT F@ F1.0 F+ ARGUMENT F!
  17.                 REPEAT
  18.         LOOP CR ;
  19.  
  20. : TESTLN   ( -- )
  21.         ." LOGS   "
  22.         NLOOPS 0
  23.         DO      ." ."  0.1E0 ARGUMENT F!
  24.                 BEGIN
  25.                         ARGUMENT F@ 1000.1E0 F> 0=
  26.                 WHILE
  27.                         ARGUMENT F@ FLN RESULT F!
  28.                         ARGUMENT F@ F1.0 F+ ARGUMENT F!
  29.                 REPEAT
  30.         LOOP CR ;
  31.  
  32. : TESTEXP   ( -- )
  33.         ." EXPONENTIALS   "
  34.         NLOOPS 0
  35.         DO      ." ." 10.0E0 ARGUMENT F!
  36.                 BEGIN
  37.                         ARGUMENT F@ 10.0E0 F> 0=
  38.                 WHILE
  39.                         ARGUMENT F@ FEXP RESULT F!
  40.                         ARGUMENT F@ 0.01E0 F+ ARGUMENT F!
  41.                 REPEAT
  42.         LOOP CR ;
  43.  
  44. : TESTARCTAN   ( -- )
  45.         ." ARCTANS   "
  46.         NLOOPS 0
  47.         DO      ." ."   0.1E0 ARGUMENT F!
  48.                 BEGIN   ARGUMENT F@ 10.0E0 F> 0=
  49.                 WHILE
  50.                         ARGUMENT F@ FATAN RESULT F!
  51.                         ARGUMENT F@ 0.01E0 F+ ARGUMENT F!
  52.                 REPEAT
  53.         LOOP CR ;
  54.  
  55. : TESTSIN    ( -- )
  56.         ." SINES   "
  57.         NLOOPS 0
  58.         DO      ." ."   F0.0 ARGUMENT F!
  59.                 BEGIN   ARGUMENT F@ PI 2.0E0 F* F> 0=
  60.                 WHILE
  61.                         ARGUMENT F@ FSIN RESULT F!
  62.                         ARGUMENT F@ PI 360.0E0 F/ F+ ARGUMENT F!
  63.                 REPEAT
  64.         LOOP CR ;
  65.  
  66. : FPMATH   ( -- )
  67.         TESTSQRT TESTLN TESTEXP TESTARCTAN TESTSIN ;
  68.  
  69.  
  70.